import Vue from 'vue'
import App from './App.vue'
import vuetify from './plugins/vuetify';
import router from './router/index.js'
import 'vuetify/dist/vuetify.min.css'
import store from './vuex'
import './common/style.css'
import './common/animate.css'

// 环境变量
// NODE_ENV 开发环境与生产环境
// VUE_APP_CURRENTMODE 生产环境打包后 测试环境 与生产环境
// VUE_APP_BASEURL 接口地址
// outputDir 打包输出文件夹
// publicPath 打包后资源目录

if (process.env.NODE_ENV == 'production') {
    console.log = function () {}
}

//公共组件
import moduleArr from './components/modules/module.js'
moduleArr.forEach(item => {
    Vue.use(item)
    Vue.component(item.name, item);
})


//ajax
import axios from './axios/index'
Vue.prototype.$http = axios;


//api管理
import api from './api/index.js'
Vue.prototype.$api = api.apiCall;
Vue.prototype.$apiAll = api.apiSynchronization;


//公共方法
import common from "./common/public.js";
Vue.prototype.$common = common


//图片裁剪
import VueCropper from 'vue-cropper'
Vue.use(VueCropper)


// highlight.js代码高亮插件
import hljs from 'highlight.js' //导入代码高亮文件
import 'highlight.js/styles/monokai-sublime.css'  //导入代码高亮样式

Vue.directive('highlight',function (el) {
    let highlight = el.querySelectorAll('pre code');
    highlight.forEach((block)=>{
        hljs.highlightBlock(block)
    })
})


// UI框架引入
Vue.use(vuetify)

Vue.config.productionTip = false

new Vue({
    render: h => h(App),
    vuetify,
    router,
    store
}).$mount('#app')
